73 research outputs found

    A Top-Down Approach to Managing Variability in Robotics Algorithms

    Full text link
    One of the defining features of the field of robotics is its breadth and heterogeneity. Unfortunately, despite the availability of several robotics middleware services, robotics software still fails to smoothly handle at least two kinds of variability: algorithmic variability and lower-level variability. The consequence is that implementations of algorithms are hard to understand and impacted by changes to lower-level details such as the choice or configuration of sensors or actuators. Moreover, when several algorithms or algorithmic variants are available it is difficult to compare and combine them. In order to alleviate these problems we propose a top-down approach to express and implement robotics algorithms and families of algorithms so that they are both less dependent on lower-level details and easier to understand and combine. This approach goes top-down from the algorithms and shields them from lower-level details by introducing very high level abstractions atop the intermediate abstractions of robotics middleware. This approach is illustrated on 7 variants of the Bug family that were implemented using both laser and infra-red sensors.Comment: 6 pages, 5 figures, Presented at DSLRob 2013 (arXiv:cs/1312.5952

    From Requirements to Code Revisited

    No full text
    ©2009 IEEE. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purposes or for creating new collective works for resale or redistribution to servers or lists, or to reuse any copyrighted component of this work in other works must be obtained from the IEEE.International audienceIn this article paper entitled "From Play-In Scenarios to Code: An Achievable Dream",David Harel presented a development schema that makes it possible to go from high-level user-friendly requirements to a full system model, and from there to the final implementation. Even if Harel's schema represents a real contribution to filing the gap between user requirements and final implementations, there is few work on its feasibility and none within UML2.This paper addresses this lack. First we use UML2 sequence diagram as a formalism for requirement specification. Then an approach that synthesizes state machines from UML2 sequence diagrams is presented. From the obtained state machines, we implement a transformation to code. The AIBO platform (one of several typesof robotic pets designed and manufactured by Sony) is used as a case study toillustrate our implementation

    The state of adoption and the challenges of systematic variability management in industry

    Get PDF
    Handling large-scale software variability is still a challenge for many organizations. After decades of research on variability management concepts, many industrial organizations have introduced techniques known from research, but still lament that pure textbook approaches are not applicable or efficient. For instance, software product line engineering—an approach to systematically develop portfolios of products—is difficult to adopt given the high upfront investments; and even when adopted, organizations are challenged by evolving their complex product lines. Consequently, the research community now mainly focuses on re-engineering and evolution techniques for product lines; yet, understanding the current state of adoption and the industrial challenges for organizations is necessary to conceive effective techniques. In this multiple-case study, we analyze the current adoption of variability management techniques in twelve medium- to large-scale industrial cases in domains such as automotive, aerospace or railway systems. We identify the current state of variability management, emphasizing the techniques and concepts they adopted. We elicit the needs and challenges expressed for these cases, triangulated with results from a literature review. We believe our results help to understand the current state of adoption and shed light on gaps to address in industrial practice.This work is supported by Vinnova Sweden, Fond Unique Interminist®eriel (FUI) France, and the Swedish Research Council. Open access funding provided by University of Gothenbur

    REVE 2021: 9th International Workshop on Reverse Variability Engineering

    Get PDF
    Software Product Line (SPL) migration remains a challenging endeavour. From organizational issues to purely technical challenges, there is a wide range of barriers that complicates SPL adoption. This workshop aims to foster research about making the most of the two main inputs for SPL migration: 1) domain knowledge and 2) legacy assets. Domain knowledge, usually implicit and spread across an organization, is key to define the SPL scope and to validate the variability model and its semantics. At the technical level, domain expertise is also needed to create or extract the reusable software components. Legacy assets can be, for instance, similar product variants (e.g., requirements, models, source code, etc.) that were implemented using ad-hoc reuse techniques such as clone-and-own. More generally, the workshop REverse Variability Engineering attracts researchers and practitioners contributing to processes, techniques, tools, or empirical studies related to the automatic, semi-automatic or manual extraction or refinement of SPL assets

    Feature location benchmark for extractive software product line adoption research using realistic and synthetic Eclipse variants

    Get PDF
    International audienceContext: It is common belief that high impact research in software reuse requires assessment in non-trivial, comparable, and reproducible settings. However, software artefacts and common representations are usually unavailable. Also, establishing a representative ground truth is a challenging and debatable subject. Feature location in the context of software families, which is key for software product line adoption, is a research field that is becoming more mature with a high proliferation of techniques.Objective: We present EFLBench, a benchmark and a framework to provide a common ground for the evaluation of feature location techniques in families of systems.Method: EFLBench leverages the efforts made by the Eclipse Community which provides feature-based family artefacts and their plugin-based implementations. Eclipse is an active and non-trivial project and thus, it establishes an unbiased ground truth which is realistic and challenging.Results: EFLBench is publicly available and supports all tasks for feature location techniques integration, benchmark construction and benchmark usage. We demonstrate its usage, simplicity and reproducibility by comparing four techniques in Eclipse releases. As an extension of our previously published work, we consider a decade of Eclipse releases and we also contribute an approach to automatically generate synthetic Eclipse variants to benchmark feature location techniques in tailored settings. We present and discuss three strategies for this automatic generation and we present the results using different settings.Conclusion: EFLBench is a contribution to foster the research in feature location in families of systems providing a common framework and a set of baseline techniques and results

    Manipulation de lignes de produits en UML

    No full text
    Une ligne de produits (LdP) regroupe un ensemble de logiciels appartenant Ă  un mĂȘme domaine et qui prend en compte des facteurs de variation. Cette thĂšse se situe dans le contexte de la manipulation de lignes de produits en UML et s'articule autour de trois contributions. Nous Ă©tendons UML pour permettre la spĂ©cification de la variabilitĂ© dans les diagrammes de classes et dans les diagrammes de sĂ©quence d'UML. Nous identifions deux types de contraintes dans les LdP et nous proposons de les spĂ©cifier comme des contraintes OCL. Nous formalisons la dĂ©rivation de produits en utilisant la transformation de modĂšles. Pour rĂ©aliser la dĂ©rivation de comportements, nous avons Ă©tudiĂ© la problĂ©matique de la synthĂšse automatique de machines Ă  Ă©tats Ă  partir des scĂ©narios. Nous proposons de revisiter le problĂšme de la synthĂšse dans le contexte d'UML2.0 par une approche algĂ©brique.RENNES1-BU Sciences Philo (352382102) / SudocSudocFranceF

    PLiBS: an Eclipse-based tool for Software Product Line Behavior Engineering

    Get PDF
    This paper presents the PLiBS (Product Line Behavior Synthesis), an Eclipse-based tool for modeling and deriving behavior aspects in Software Product Lines (SPL). PLiBS allows specifying SPL behaviors using UML2 sequence diagrams extended by variability mechanisms. PLiBS implements a two-step approach to derive product behaviors. The first one uses model transformation to specialize sequence diagrams. While the second one uses UML state machines synthesis from sequence diagrams. This paper presents a guided tour around PLiBS. It presents its architecture and its main components. It also illustrates its uses on the Banking Product Line example

    DSLForge: Textual Modeling on the Web

    No full text
    Abstract. The use of Model-Driven Engineering in software develop-ment is increasingly growing in industrial applications as the technolo-gies are becoming more mature. In particular, domain-specific languages bring to end-users simplicity of use and productivity by means of var-ious artifacts generators. However, end-users still need to cope with heavy modeling infrastructures and complex deployment procedures, be-fore being able to work on models. In this paper, we propose a central-ized lightweight approach for performing textual modeling through web browsers. DSLFORGE is a generator of online text editors. Given a lan-guage grammar, the tool allows to generate lightweight web editors, sup-porting syntax highlighting, syntax validation, scoping, and code com-pletion. DSLFORGE allows also automatic integration of existing code generators into the generated web editor providing a complete online modeling user experience
    • 

    corecore